Fixing tap coefficients in a programmable finite-impulse-response equalizer

ABSTRACT

A method for selecting which tap coefficients of a programmable finite-impulse-response (FIR) equalizer to fix is disclosed. In one embodiment, such a method includes performing an initial calibration to determine an initial value for each tap coefficient of a FIR equalizer. These initial values may be used to produce a first waveform. The method then performs an operation on the first waveform to produce a second waveform comprising multiple lobes. The second waveform is then analyzed to determine one or more lobes of the second waveform that have the largest area. The method then fixes coefficients of one or more taps that are closest to the lobe or lobes having the largest area. A corresponding apparatus and computer program product are also disclosed.

BACKGROUND

1. Field of the Invention

This invention relates to apparatus and methods for reading data onstorage media such as magnetic tape.

2. Background of the Invention

As the storage capacities of modern tape cartridges are pushed higherand higher, it is becoming increasingly difficult to read data frommagnetic tape. Small variations in manufacturing or variations intemperature, humidity, or head-to-tape interfaces can cause changes inthe read-back signal which may cause traditional recording channels tofail to detect data. Modern tape drives are able to handle thisvariability by being adaptable. Based upon the signals read from tape,the read-detect channel of the modern tape drive can adjust theequalization of the read-back signal to improve the signal-to-noiseratio. It can also compensate for head asymmetry or modify datadetection parameters to improve the detection reliability.

One of the problems with the adaptability discussed above is thatsometimes the read-detect channel does not converge to an optimalconfiguration. Instead, it may diverge from an optimal configurationsuch that data can no longer be detected. With otherwise good media,head, and tape path, the channel may adapt in a manner that renders thedata useless. This problem tends to get worse as the storage density oftape increases.

Divergence of the equalizer is the primary cause of read-detect channelinstability. In many cases, this divergence may be controlled by fixinga certain number of tap coefficients in the adaptablefinite-impulse-response (FIR) equalizer (also known as a FIR filter).For example, in a typical FIR equalizer that includes seventeen taps,four tap coefficients out of seventeen may be fixed. If the correct tapcoefficients are fixed, then the FIR equalizer will be stable and theFIR equalizer will converge to an optimal configuration (assuming thatthe initial configuration of the FIR equalizer was reasonable). If thewrong tap coefficients are fixed, then the FIR equalizer will notconverge and the equalization will eventually get so bad that the dataread will not be usable.

In the FIR equalizers of many current tape drives, four adjacent tapcoefficients out of seventeen are fixed. In such drives, the initialconfiguration (i.e., tap coefficients) of the equalizer may bedetermined using a calibration procedure. The largest tap coefficient ofthe seventeen may then be fixed. Two tap coefficients on one side of thelargest tap coefficient and one tap coefficient on the other side of thelargest tap coefficient may be fixed. The side with the two fixed tapcoefficients is typically selected to be in the direction of the nextlargest tap coefficient of the seventeen coefficients. This methodologyhas worked well historically. However, as tape linear densities haveincreased and recording properties of the storage media have changed,this methodology increasingly results in divergent FIR equalizers.

In view of the foregoing, what is needed is an improved methodology toselect which tap coefficients of a programmable FIR equalizer to fix.Ideally, such a methodology will allow FIR equalizers to moreconsistently converge to an optimal configuration that improves, ratherthan worsens, the signal to noise ratio.

SUMMARY

The invention has been developed in response to the present state of theart and, in particular, in response to the problems and needs in the artthat have not yet been fully solved by currently available apparatus andmethods. Accordingly, the invention has been developed to provideapparatus and methods for more effectively selecting which tapcoefficients of a programmable finite-impulse-response (FIR) equalizerto fix. The features and advantages of the invention will become morefully apparent from the following description and appended claims, ormay be learned by practice of the invention as set forth hereinafter.

Consistent with the foregoing, a method for selecting which tapcoefficients of a programmable finite-impulse-response (FIR) equalizerto fix is disclosed herein. In one embodiment, such a method includesperforming an initial calibration to determine an initial value for eachtap coefficient of a FIR equalizer. These initial values may be used toproduce a first waveform. The method then performs an operation on thefirst waveform to produce a second waveform comprising multiple lobes.The second waveform is then analyzed to determine one or more lobes ofthe second waveform that have the largest area. The method then fixescoefficients of one or more taps that are closest to the lobe or lobeshaving the largest area.

A corresponding apparatus and computer program product are alsodisclosed and claimed herein.

BRIEF DESCRIPTION OF THE DRAWINGS

In order that the advantages of the invention will be readilyunderstood, a more particular description of the invention brieflydescribed above will be rendered by reference to specific embodimentsillustrated in the appended drawings. Understanding that these drawingsdepict only typical embodiments of the invention and are not thereforeto be considered limiting of its scope, the invention will be describedand explained with additional specificity and detail through use of theaccompanying drawings, in which:

FIG. 1 is a high-level block diagram showing one example of aread-detect channel for a tape drive;

FIG. 2 is a high-level block diagram showing a conventional programmablefinite-impulse-response (FIR) equalizer;

FIG. 3 is a high-level block diagram showing a programmable FIRequalizer that is functionally equivalent to the programmable FIRequalizer illustrated in FIG. 2;

FIG. 4 is a flow chart showing one embodiment of an improved method forselecting which tap coefficients of a programmablefinite-impulse-response (FIR) equalizer to fix;

FIG. 5A is a table showing initial tap coefficients for a firstexemplary FIR, as well as tap coefficients that are fixed using animproved method in accordance with the invention;

FIG. 5B is a graph showing a first waveform generated for the firstexemplary FIR, and a second waveform representing a modified version ofthe first waveform;

FIG. 5C is a graph showing the magnitude of the second waveformillustrated in FIG. 5B;

FIG. 6A is a table showing initial tap coefficients for a secondexemplary FIR, as well as tap coefficients that are fixed using animproved method in accordance with the invention;

FIG. 6B is a graph showing a first waveform generated for the secondexemplary FIR, and a second waveform representing a modified version ofthe first waveform;

FIG. 6C is a graph showing the magnitude of the second waveformillustrated in FIG. 6B;

FIG. 7A is a table showing initial tap coefficients for a thirdexemplary FIR, as well as tap coefficients that are fixed using animproved method in accordance with the invention;

FIG. 7B is a graph showing a first waveform generated for the thirdexemplary FIR, and a second waveform representing a modified version ofthe first waveform; and

FIG. 7C is a graph showing the magnitude of the second waveformillustrated in FIG. 7B.

DETAILED DESCRIPTION

It will be readily understood that the components of the presentinvention, as generally described and illustrated in the Figures herein,could be arranged and designed in a wide variety of differentconfigurations. Thus, the following more detailed description of theembodiments of the invention, as represented in the Figures, is notintended to limit the scope of the invention, as claimed, but is merelyrepresentative of certain examples of presently contemplated embodimentsin accordance with the invention. The presently described embodimentswill be best understood by reference to the drawings, wherein like partsare designated by like numerals throughout.

As will be appreciated by one skilled in the art, the present inventionmay be embodied as an apparatus, system, method, or computer programproduct. Furthermore, the present invention may be implemented as ahardware embodiment, a software embodiment (including firmware, residentsoftware, microcode, etc.) configured to operate hardware, or anembodiment combining both software and hardware elements. Each of theseembodiments may be represented by one or more modules or blocks.Furthermore, the present invention may be implemented in acomputer-usable storage medium embodied in any tangible medium ofexpression having computer-usable program code stored therein.

Any combination of one or more computer-usable or computer-readablestorage medium(s) may be utilized to store the computer program product.The computer-usable or computer-readable storage medium may be, forexample, but not limited to, an electronic, magnetic, optical,electromagnetic, infrared, or semiconductor system, apparatus, ordevice. More specific examples (a non-exhaustive list) of thecomputer-readable storage medium may include the following: anelectrical connection having one or more wires, a portable computerdiskette, a hard disk, a random access memory (RAM), a read-only memory(ROM), an erasable programmable read-only memory (EPROM or Flashmemory), an optical fiber, a portable compact disc read-only memory(CDROM), an optical storage device, or a magnetic storage device. In thecontext of this document, a computer-usable or computer-readable storagemedium may be any medium that can contain, store, or transport theprogram for use by or in connection with the instruction executionsystem, apparatus, or device.

Computer program code for carrying out operations of the presentinvention may be written in any combination of one or more programminglanguages, including an object-oriented programming language such asJava, Smalltalk, C++, or the like, and conventional proceduralprogramming languages, such as the “C” programming language or similarprogramming languages. Computer program code for implementing theinvention may also be written in a low-level programming language suchas assembly language.

The present invention may be described below with reference to flowchartillustrations and/or block diagrams of methods, apparatus, systems, andcomputer program products according to embodiments of the invention. Itwill be understood that each block of the flowchart illustrations and/orblock diagrams, and combinations of blocks in the flowchartillustrations and/or block diagrams, may be implemented by computerprogram instructions or code. The computer program instructions may beprovided to a processor of a general-purpose computer, special-purposecomputer, or other programmable data processing apparatus to produce amachine, such that the instructions, which execute via the processor ofthe computer or other programmable data processing apparatus, createmeans for implementing the functions/acts specified in the flowchartand/or block diagram block or blocks.

The computer program instructions may also be stored in acomputer-readable storage medium that can direct a computer or otherprogrammable data processing apparatus to function in a particularmanner, such that the instructions stored in the computer-readablestorage medium produce an article of manufacture including instructionmeans which implement the function/act specified in the flowchart and/orblock diagram block or blocks. The computer program instructions mayalso be loaded onto a computer or other programmable data processingapparatus to cause a series of operational steps to be performed on thecomputer or other programmable apparatus to produce a computerimplemented process such that the instructions which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

Referring to FIG. 1, a high-level block diagram showing one example of aread-detect channel circuit 100 for a tape drive is illustrated. Thereare typically sixteen or thirty-two read detect channels 100 per tapedrive, although other numbers of channels are possible. During a readoperation, a tape head 102 is typically passed over data recorded onmagnetic tape 104 in order to convert the recorded data into an analogsignal. In particular, in a magnetic tape drive, a magneto-resistiveread head 102 is passed over data that has been previously written asflux reversals on the magnetic tape 104. As the head 102 is passed overthe tape 104, the head 102 converts the flux reversals into anelectrical analog signal that represents the data originally stored onthe magnetic tape 104.

An analog-to-digital converter 106 (“ADC”) periodically samples theanalog signal and converts the sampled analog signal to a digital inputsignal and creates a digital waveform. The output of theanalog-to-digital converter 106 may then be sent to afinite-impulse-response (FIR) equalizer 108 to shape the digitalwaveform. The digital waveform may then be sent to a detector 112 by wayof a detector interface 110. The detector 112 may convert the digitalwaveform to a binary stream of ones and zeros which ideally reflects thedata that was originally written to the magnetic tape 104.

Upon producing the binary data, the detector 112 produces an errorsignal which indicates the error between the equalizer output and thedesired detector input. This error signal may be sent to a least meanssquare (LMS) engine 116 which uses the error signal to adjust selectedtaps coefficients of the FIR equalizer 108. An input buffer 114 may beused to temporally align the error signal with the output received fromthe analog-to-digital converter 106. In practice, as will be explainedin more detail hereafter, certain adjacent tap coefficients of the FIRequalizer 108 may be fixed while other tap coefficients may be allowedto adapt (i.e., adjust their values to optimal values) in response tothe error signal. This ideally allows the FIR equalizer 108 to remainstable while still allowing it to adapt to the error signal. Twoexamples of FIR equalizer circuits 108 are illustrated in FIGS. 2 and 3.

Referring to FIG. 2, a high-level block diagram showing an example of aconventional programmable finite-impulse-response (FIR) equalizer 108 isillustrated. As shown, the output of the FIR equalizer 108 is generatedby convolving its input signal with the FIR equalizer's impulseresponse. The output of the FIR equalizer 108 is a weighted sum of thecurrent and a finite number of previous values of the input. Delay units200 (which may be implemented using registers, for example) may outputthe previous values of the input. The values (H0, H1, H2, . . . , Hn)are tap coefficients that control the impulse response.

In the illustrated embodiment, the FIR equalizer 108 includes seventeentaps and associated tap coefficients. Such FIR equalizers 108 generallyprovide an optimal balance between cost and stability and thus are usedin the read-detect channels 100 of many current tape drives. More tapsmay increase the cost of the FIR equalizer 108 while providing littleadditional benefit in terms of signal-to-noise ratio (SNR). Fewer tapsmay decrease the cost of the FIR equalizer 108 but undesirably reducethe SNR.

Nevertheless, the disclosed FIR equalizer 108 is not limited toseventeen taps but may include more or fewer taps as needed.Furthermore, the methodology disclosed herein is not limited to FIRequalizers 108 having seventeen taps but may be used with FIR equalizers108 having any number of taps. A FIR equalizer 108 that is physicallydifferent from, but functionally equivalent to, the FIR equalizer 108illustrated in FIG. 2 is shown in FIG. 3.

In order to account for changes to the read-back signal caused byvariations in manufacturing, temperature, humidity, and/or thehead-to-tape interface, certain tap coefficients of the FIR equalizer108 may be allowed to vary. Based upon the signals read from themagnetic tape 104, the read-detect channel 100 may adjust theequalization of the read-back signal by modifying the tap coefficients.One drawback of this approach is that, if the wrong tap coefficients areallowed to vary, the tap coefficients may vary in a way that actuallyworsens the signal-to-noise ratio. In some cases, the tap coefficientsmay vary in such a way that data on the magnetic tape 104 can no longerbe detected.

Thus, an improved method is needed to correctly select which tapcoefficients of a FIR equalizer 108 to fix, thereby also selecting thetap coefficients of the FIR equalizer 108 that are allowed to vary.Ideally, such a method will enable the FIR equalizer 108 to moreconsistently converge to an optimal configuration that improves thesignal-to-noise ratio of the data being read. One embodiment of such amethod will be described in association with FIG. 4.

Referring to FIG. 4, one embodiment of an improved method 400 forselecting which tap coefficients of a FIR equalizer 108 to fix isillustrated. As shown, the method 400 begins by performing 402 aninitial calibration procedure to determine initial values for the FIR'stap coefficients. In certain embodiments, the initial calibration isperformed 402 by reading calibration data on magnetic tape 104 andsetting the tap coefficients to maximize the signal-to-noise ratio ofthe calibration data. In other embodiments, the initial calibration isperformed 402 by simply setting the tap coefficients to values read fromthe magnetic tape 104 or another location.

Once the initial values for the tap coefficients are determined, the tapcoefficients are upsampled 404 by some number x, such as eight. Forexample, in the case of a FIR equalizer 108 with seventeen taps,upsampling by eight will provide (8×17=136) coefficients. The upsamplingmay be performed by inserting (x−1) zeros between each FIR coefficientvalue (with x/2 zeros before H0 and (x/2)−1 zeros after H16). Forupsampling by eight with a seventeen tap FIR equalizer 108, seven zerosmay be inserted between each FIR tap coefficient with four zeros beforeH0 and three zeros after H16. These coefficients may be used to producea first waveform. The first waveform may then be convolved 406 with aSinc function to provide a second waveform that is a modified version ofthe first waveform. One or more lobes of the second waveform may then beidentified 408 by identifying zero crossings of the second waveform. Incertain embodiments, the absolute value (i.e., magnitude) of the secondwaveform is determined to facilitate computing the power of each lobe.

The method 400 may then integrate 410 across each lobe to determine eachlobe's power (i.e., area). In certain embodiments, the power of eachlobe is determined by taking the magnitude of every sample within thelobe and summing them together. One or more adjacent lobes having thegreatest power may then be selected 412. In one embodiment, for example,two adjacent lobes having the greatest power may be selected 412. Themethod 400 may then determine 414 which tap or taps are closest to thelobe(s) with the greatest power. For example, when applying themethodology 400 to a FIR equalizer 108 having seventeen taps, the method400 may determine 414 the three or four adjacent taps that are closestto the lobe(s) with the greatest power. The method 400 may then fix 416the coefficients of these taps while allowing the coefficients of theother taps to vary.

The instant inventors have found that the above-described methodology400 provides a more consistent way to identify fixed tap coefficientsthat will result in a stable (i.e., converging) FIR equalizer 108.Several specific examples of applying the methodology 400 to actualreal-world FIR equalizers 108 are described in association with FIGS. 5Athrough 7C. More specifically, FIGS. 5A through 5C show the applicationof the methodology 400 to a first real-world FIR equalizer 108; FIGS. 6Athrough 6C show the application of the methodology 400 to a secondreal-world FIR equalizer 108; and FIGS. 7A through 7C show theapplication of the methodology 400 to a third real-world FIR equalizer108. In each of these examples, the methodology 400 successfullyidentified fixed tap coefficients that resulted in a stable FIRequalizer 108.

Referring to FIG. 5A, a table 510 showing the initial tap coefficientsfor a first exemplary FIR equalizer 108 is illustrated. The initial tapcoefficients are listed vertically along the left-hand side of the table510. Using the methodology 400 of FIG. 4, the initial seventeen tapcoefficients were upsampled by eight to yield 136 coefficients. These136 coefficients were then used to produce a first waveform 500, asshown in FIG. 5B. The magnitude of the spikes of the first waveform 500represent the magnitude of the coefficients listed in FIG. 5A. Theportion of the waveform 500 between the spikes is representative of theadditional samples (i.e., zeros) generated during the upsampling step404.

As further specified by the methodology 400, the first waveform isconvolved 406 with a sinc function to generate a second waveform 502that represents a modified version of the first waveform. As shown, thesecond waveform 502 includes multiple “lobes.” For the purposes of thisspecification, a “lobe” is defined to be a portion of a waveform betweenzero crossings. FIG. 5C shows the magnitude of the lobes of the secondwaveform 502.

As previously discussed, the methodology 400 integrates each lobe todetermine its power. It should be recognized that the integration may beperformed on the second waveform 502 illustrated in FIG. 5B or thewaveform representing the magnitude of the second waveform 502 asillustrated in FIG. 5C (for the purposes of this specification, each ofthe waveforms illustrated in FIGS. 5B and 5C are considered to bedifferent variations of the “second waveform 502”). One of more lobeshaving the greatest power may then be selected 412. In this example, thetwo largest lobes 504 a, 504 b are selected. The methodology 400 thendetermines which tap or taps are closest to the lobes with the greatestpower. In this example, the four taps that are closest to the lobes 504a, 504 b include taps 7, 8, 9, and 10. Thus, as shown in FIG. 5A, thecoefficients H7, H8, H9, and H10 would be fixed using the methodology400 described in FIG. 4, as indicated in bold.

The instant inventors tested the first real-world FIR equalizer 108 andfound that the FIR equalizer 108 converged (i.e., was stable) for threesets of four fixed tap coefficients. The three sets of coefficients areshown in the table 510 of FIG. 5A. More specifically, the sets [H7, H8,H9, H10], [H8, H9, H10, H11], and [H9, H10, H11, H12] were each found toproduce a stable FIR equalizer 108 when fixed. As shown, one of the sets([H7, H8, H9, H10]) was the same as that determined by the methodology400. Thus, the test confirmed the ability of the above-describedmethodology 400 to select a correct set of fixed tap coefficients forthe first FIR equalizer 108.

Referring to FIG. 6A, a table 610 showing the initial tap coefficientsfor a second exemplary FIR equalizer 108 is illustrated. The initial tapcoefficients are listed vertically along the left-hand side of the table610. Using the methodology 400 of FIG. 4, the initial seventeen tapcoefficients were upsampled by eight to yield 136 coefficients. The 136coefficients were then used to produce a first waveform 600, as shown inFIG. 6B. The first waveform 600 was then convolved 406 with a sincfunction to generate a second waveform 602 comprising multiple lobes.Each lobe was then integrated to determine its power (i.e., area). Thetwo largest lobes 604 a, 604 b were selected and the four taps closestto the lobes 604 a, 604 b were determined. In this example, the fourtaps closest to the lobes 604 a, 604 b were taps 4, 5, 6, and 7. Thus,as shown in FIG. 6A, the coefficients H4, H5, H6, and H7 were fixedusing the methodology 400, as indicated in bold.

The instant inventors tested the second real-world FIR equalizer 108 andfound that the FIR equalizer 108 converged (i.e., was stable) usingthree different sets of four fixed tap coefficients. The three sets oftap coefficients are shown in the table 610 of FIG. 6A. Morespecifically, the sets [H4, H5, H6, H7], [H5, H6, H7, H8], and [H6, H7,H8, H9] were each found to produce a stable FIR equalizer 108. As shown,one of the sets ([H4, H5, H6, H7]) was the same as that determined bythe methodology 400. Thus, this test confirmed the ability of theabove-described methodology 400 to select a correct set of fixed tapcoefficients for the second exemplary FIR equalizer 108.

Referring to FIG. 7A, a table 710 showing the initial tap coefficientsfor a third exemplary FIR equalizer 108 is illustrated. The initial tapcoefficients are listed vertically along the left-hand side of the table710. Using the methodology 400 of FIG. 4, the initial seventeen tapcoefficients were up sampled by eight to yield 136 coefficients. The 136coefficients were then used to produce a first waveform 700, as shown inFIG. 7B. The first waveform 700 was then convolved 406 with a sincfunction to generate a second waveform 702 comprising multiple lobes.Each lobe was then integrated to determine its power (i.e., area). Thetwo largest lobes 704 a, 704 b were selected and the four taps closestto the largest lobes 704 a, 704 b were determined. In this example, thefour taps that were closest to the lobes 704 a, 704 b were taps 2, 3, 4,and 5. Thus, as shown in FIG. 7A, the coefficients H2, H3, H4, and H5were fixed using the methodology 400, as indicated in bold type.

The instant inventors tested the third real-world FIR equalizer 108 andfound that the FIR equalizer 108 converged (i.e., was stable) usingthree different sets of four fixed tap coefficients. The three sets oftap coefficients are shown in the table 710 of FIG. 7A. Morespecifically, the sets [H2, H3, H4, H5], [H3, H4, H5, H6], and [H4, H5,H6, H7] were each found to stabilize the FIR equalizer 108. As shown,one of the sets ([H2, H3, H4, H5]) was the same as that determined bythe methodology 400. Thus, this test also confirmed the ability of theabove-described methodology 400 to select a correct set of fixed tapcoefficients for the third exemplary FIR equalizer 108.

It should be recognized that different variations of the methodology 400as it relates to FIGS. 5A through 7C are possible. For example, thenumber of lobes selected and the number of fixed tap coefficientsselected for the lobes may vary in different embodiments of themethodology 400. For example, in one alternative embodiment, themethodology 400 determines the single largest lobe and fixes thecoefficients of the closest three or four taps with respect to thesingle largest lobe. In another embodiment, more than two adjacentlargest lobes are determined and the coefficients of a tap or group oftaps closest to the group of largest lobes are fixed. Other variationsare possible and within the scope of the invention.

The flowcharts and/or block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer-usable storage media according tovarious embodiments of the present invention. In this regard, each blockin the flowcharts and/or block diagrams may represent a module, segment,or portion of code, which comprises one or more executable instructionsfor implementing the specified logical function(s). It should also benoted that, in some alternative implementations, the functions noted ina block may occur in a different order than that illustrated in theFigures. For example, two blocks shown in succession may, in fact, beimplemented in the reverse order, depending upon the functionalityinvolved. It will also be noted that each block of the block diagramsand/or flowchart illustrations, and combinations of blocks in the blockdiagrams and/or flowchart illustrations, may be implemented by specialpurpose hardware-based systems that perform the specified functions oracts, or combinations of special purpose hardware and computerinstructions.

1. A method for selecting which tap coefficients of a programmablefinite-impulse-response (FIR) equalizer to fix, the method comprising:performing an initial calibration to determine an initial value for eachtap coefficient of a FIR equalizer; producing a first waveform using theinitial values; performing an operation on the first waveform to producea second waveform that represents a modified version of the firstwaveform, the second waveform comprising a plurality of lobes; analyzingthe second waveform to determine at least one lobe of the secondwaveform that has the largest area; and fixing the coefficient of atleast one tap that is closest to the at least one lobe.
 2. The method ofclaim 1, wherein performing the operation comprises convolving afunction with the first waveform to produce the second waveform.
 3. Themethod of claim 2, wherein the function is a sinc function.
 4. Themethod of claim 1, wherein the at least one lobe is a single lobe. 5.The method of claim 1, wherein the at least one lobe is a group ofseveral adjacent lobes.
 6. The method of claim 1, wherein the at leastone tap is a single tap.
 7. The method of claim 1, wherein the at leastone tap is a group of several adjacent taps.
 8. The method of claim 1,wherein producing the first waveform comprises upsampling the initialvalues to produce the first waveform.
 9. The method of claim 1, furthercomprising determining the plurality of lobes by finding zero crossingsof the second waveform.
 10. An apparatus for selecting which tapcoefficients of a programmable finite-impulse-response (FIR) equalizerto fix, the apparatus comprising: a tape drive configured to perform thefollowing: perform an initial calibration to determine an initial valuefor each tap coefficient of a FIR equalizer; produce a first waveformusing the initial values; perform an operation on the first waveform toproduce a second waveform that represents a modified version of thefirst waveform, the second waveform comprising a plurality of lobes;analyze the second waveform to determine at least one lobe of the secondwaveform that has the largest area; and fix the coefficient of at leastone tap that is closest to the at least one lobe.
 11. The apparatus ofclaim 10, wherein the tape drive is further configured to perform theoperation by convolving a function with the first waveform to producethe second waveform.
 12. The apparatus of claim 11, wherein the functionis a sinc function.
 13. The apparatus of claim 10, wherein the at leastone lobe is a single lobe.
 14. The apparatus of claim 10, wherein the atleast one lobe is a group of several adjacent lobes.
 15. The apparatusof claim 10, wherein the at least one tap is a single tap.
 16. Theapparatus of claim 10, wherein the at least one tap is a group ofseveral adjacent taps.
 17. The apparatus of claim 10, wherein the tapedrive is configured to produce the first waveform by upsampling theinitial values.
 18. The apparatus of claim 10, wherein the tape drive isfurther configured to determine the plurality of lobes by finding zerocrossings of the second waveform.
 19. A computer program product forselecting which tap coefficients of a programmablefinite-impulse-response (FIR) equalizer to fix, the computer programproduct comprising a non-transitory computer-readable storage mediumhaving computer-usable program code embodied therein, thecomputer-usable program code comprising: computer-usable program code toperform an initial calibration to determine an initial value for eachtap coefficient of a FIR equalizer; computer-usable program code toproduce a first waveform using the initial values; computer-usableprogram code to perform an operation on the first waveform to produce asecond waveform that represents a modified version of the firstwaveform, the second waveform comprising a plurality of lobes;computer-usable program code to analyze the second waveform to determineat least one lobe of the second waveform that has the largest area; andcomputer-usable program code to fix the coefficient of at least one tapthat is closest to the at least one lobe.
 20. The computer programproduct of claim 19, wherein performing the operation comprisesconvolving a function with the first waveform to produce the secondwaveform.